1. The Field of the Invention
The invention relates to methods, devices, and systems for saving data during a power failure. Specifically, the invention relates to methods, devices, and systems for rebooting a computer with a kernel dedicated to saving data to storage devices.
2. The Relevant Art
Computer systems such as server farms or mainframe computers typically process large amounts of data. Data normally resides on non-volatile mass storage devices such as hard disk drives or tape drives. Data is typically transferred from non-volatile mass storage to volatile memory within a computer system for processing. Recent transaction data may also reside in the volatile memory of the computer.
Data residing in volatile memory is vulnerable to loss if the computer loses power. The cost of the data loss may be very high. To protect against data loss, computers are often provided with back-up power supplies. Back-up power supplies deliver uninterrupted power that allows a computer to continue operation. Long-term back-up supplies can power a computer until the computer is safely shut down or regular operating power is restored.
Providing long-term back-up power may be impractical in a data processing facility that maintains a large number of computers. As a result, short-term back-up power supplies storing substantial amounts of power are often used. Short-term back-up power supplies are designed to supply power until a computer can safely be shut down. Data residing in the computer's volatile memory must be transferred to non-volatile memory before short-term power is exhausted. Rapid data transfers reduce the risk of permanent data loss and minimize the cost of back-up power supplies by shortening the time a back-up supply must provide power when shutting down a computer.
Even when a back-up power supply is available, power failures may disrupt communications, peripherals, or ancillary systems, and prevent computer processes from operating normally. In such conditions, processes are susceptible to completion delays and faults that may result in failure to return control to the operating kernel. Furthermore, as processes delay or stall, computer operation may become increasingly unstable, and the computer's standard operating kernel may ultimately stall, resulting in lost data, even though the computer was continuously powered with back-up power.
A data saving process that saves data during a power failure or other shutdown operation typically runs under the computer's standard operating kernel. The data saving process may be slowed by existing processes that were already running under the standard operating kernel before the power failure occurred. The existing processes may stall before the data transfer can be completed. Existing processes also take processing power and communications bandwidth from the critical data saving process, and can potentially cause unacceptable non-deterministic delays during the data transfer process. Even shutting down the existing processes can be unpredictable if power failure conditions prevent normal process termination. The delays of existing processes put the computer's ability to rapidly and predictably save data during a power failure shutdown at risk.
What is needed is a device, system, and method of configuring a computer to save data as rapidly as possible during a computer system shutdown. What is more particularly needed is a device, system, and method of deterministically terminating existing processing and configuring a computer and related subsystems to save data from volatile storage to non-volatile storage.